<?php

/*-----------------------------------------------------------*\
|                 - Зворотній зв'язок -                         |
|                 Author:  Skalden Russell                    |
|                 Last modify: 20130104                      |
\*-----------------------------------------------------------*/

////// Початок нової сесії
session_start();

////// Встановлення кодування UTF-8
header('Content-Type: text/html; charset=utf-8');

// Показати помилки
@ini_set('display_errors', true );
@ini_set('error_reporting', E_ALL ^ E_NOTICE);

// Безпека
define('TSUE_SEC', TRUE);

// Поточний каталог
define('TSUE_DIR', dirname(__FILE__));

// Встановити кодування
$CFG['charset'] = "utf-8";

// Налаштування системи
include_once( TSUE_DIR . '/data/settings.php' );
// Локалізація
include_once( TSUE_DIR . '/data/language/ru_loc/ru_adminpanel.lng');
// Налаштування БД
include_once( TSUE_DIR . '/data/config.php');
// Клас SQL
include_once( TSUE_DIR . '/engine/database/cmysql.php');
// Елементи wEngine
include_once( TSUE_DIR . '/engine/elements.php');
// Парсер ресурсу
include_once( TSUE_DIR . '/engine/include/build.content.php');
// Кодування/Декодування тексту
include_once( TSUE_DIR . '/engine/include/security.text.php');

// Записую повідомлення
$_errflag = FALSE;
$errtext = "";
$status = FALSE;
if(isset($_POST['send_btn']) && ($_SESSION['sec_code_session'] == trim($_POST['securitykey'])))
{
	
	// Перевірка імені
	if(strlen($_POST['name']) <= 5)
	{	
		$_errflag = TRUE;
		$errtext .= "Поле <b>Ім'я</b> повинно містити більше <b>5</b> символів.<br />";
	}
	
	// Перевірка ел. адреси
	if(!preg_match("/^(?:[a-z0-9'\.\-_\+\|]++|&)+@[a-z0-9\-]+\.(?:[a-z0-9\-]+\.)*[a-z]+$/i", $_POST['email'])) 
	{
		$_errflag = TRUE;
		$errtext .= "Неправильний формат <b>Email</b> адреси.<br />";
	}
	
	// Перевірка повідомлення
	if(strlen($_POST['message']) <= 10)
	{
		$_errflag = TRUE;
		$errtext .= "Ваше <b>повідомлення</b> повинне містити більше <b>10</b> символів.<br />";
	}
	
	// Якщо без помилок пишу дані в базу
	if($_errflag === FALSE)
	{
		$sectext = new CSecurity();
		$_POST['name'] = trim( $sectext->encode( strip_tags( $_POST['name'] ) ) );
		$_POST['email'] = trim( $sectext->encode( strip_tags( $_POST['email'] ) ) );
		$_POST['message'] = $sectext->encode( strip_tags( $_POST['message'] ) );
		
		$sql = new cMysql();
		$sql->connect($SQL_CONF['host'], $SQL_CONF['user'], $SQL_CONF['pass'], $SQL_CONF['dbname']);
		$sql->query("INSERT INTO `". $SQL_CONF['pref'] ."ticketmessage` (`ticketid`, `name`, `email`, `message`, `date`) VALUES (NULL, '". $_POST['name'] ."', '". $_POST['email']. "', '". $_POST['message'] ."', NOW())");
		$sql->close();
		$status = TRUE;
	}
} 
else
{
	if(!empty($_POST['securitykey']) && ($_SESSION['sec_code_session'] != trim($_POST['securitykey'])))
	{
		$_errflag = TRUE;
		$errtext = "Неправильно введений код з <b>зображення</b>, спробуйте знову.<br />";
	}
}

$pContent = new CContent();
$content = "";
$pContent->SetReplace( 'phpself', $_SERVER['PHP_SELF']);

// Якщо є помилки виводжу їх
if($_errflag === TRUE)
{
	$errtext = '<br /><div align="center">
		<div align="center" style="width: 55%; border: 1px solid #FF3333; background-color: #FFCCCC; padding: 5px; overflow: auto;">'. $errtext .'</div>
		</div><br />';
	$pContent->SetReplace( 'errormessage', $errtext );
}
else
{
	$pContent->SetReplace( 'errormessage', "");
}

// Повідомлення прийнято
if($status === TRUE)
{
	$errtext = '<br /><div align="center">
		<div align="center" style="width: 50%; border: 1px solid #33ff00; background-color: #CCFFCC; padding: 5px; overflow: auto;">  
		Ваше повідомлення <b>прийнято</b> на розгляд.
		</div></div> <br />';
	$pContent->SetReplace( 'errormessage', $errtext );
}

$content = $pContent->getContent( 'styles/' . $MALINA_CONF['theme_cur'] . '/send_message.html', 'r');
$pContent->SetReplace( 'indexcontent', $content);
echo $pContent->GetContent( 'styles/' . $MALINA_CONF['theme_cur'] . '/index.html', 'r');

?>
